The present invention relates to data processing by digital computer, and more particularly to word processing.
Word processing systems (also referred to as word processors) allow users to create documents, primarily textual documents that might otherwise be prepared on a typewriter. Users can also edit, print or save the documents using the word processor. Such documents will be referred to as word processing documents.
Modern word processors offer a greater range of functions than the first such programs. For example, most word processors today can check a word processing document for spelling, grammar, or style errors. Some word processors can even perform this check in different languages. For example, if the document contains a portion in English and another portion in German, the word processor can use an English dictionary to check the spelling for the English portion and a German dictionary to check the spelling for the German portion.
In this specification, languages like English or German, that is, languages normally used by humans to communicate with other humans, will be referred to as natural languages, to distinguish them from the artificial languages normally used to communicate with computers. An artificial language has a formal definition that allows it to be parsed unambiguously. Artificial languages generally have simpler grammar and a smaller vocabulary than natural languages. Examples of artificial languages include Java, C++, HTML (Hypertext Markup Language), and XML (Extensible Markup Language).
Word processors are typically designed for natural language processing. They are typically not designed for artificial language processing and they generally lack any awareness of artificial languages. Artificial language processing is typically done by programs that are specifically designed for such processing. An example of such a program is an HTML editor, for example, Microsoft FrontPage®, available from Microsoft Corporation of Redmond, Wash.